DSL (digital subscriber line) is an access technology used to connect users to a central office (CO) by mapping data to higher frequency components of voice grade copper lines used for basic telephony service. Typically, service providers use this technology to deliver broadband internet connection to home users. In order to effectively support various applications on the DSL link, usually the traffic is segregated into three classes, namely:                Low latency, high priority (e.g. voice)        Low latency, low priority (e.g. video)        High latency (e.g. ftp data)        
Current DSL standards have defined two ways of supporting class of service. Low latency and high latency traffic can be split at the TPS-TC (transport protocol specific transmission convergence) layer and mapped to different latency paths of the PMS-TC (Physical media specific transmission convergence) layer. The high latency path in PMS-TC uses a technique called interleaving which results in better impulse noise protection at the cost of higher latency. The low latency path uses smaller interleaving depth or no interleaving at all (and thus lower impulse noise protection) but with the advantage that the latency of transmission is lower.
These two streams can be further split into low and high priority traffic in the TPS-TC layer using a technique called pre-emption. Traffic on the DSL link is transmitted in units of Ethernet packets, if the TPS-TC layer is configured in the Packet Transfer Mode (PTM). When the transmitter is to send a pre-emption packet, and it is in the middle of transmission of a lower priority packet, it is allowed to pause the transmission of the ongoing lower priority packet, transmit the higher priority packet and then resume the lower priority packet transmission. This ensures that the higher priority packet has minimal transmission delay, which comes at a cost of increased transmission delay of the lower priority packet.
Bonding is a technique to aggregate the data rates of two or more DSL links between the CO and same Customer Premises Equipment (CPE). Usually the telephony services company provides two copper lines to its subscribers, one of which is unused and meant for redundancy purposes. These lines can be bonded together to either have higher bandwidth or support longer distance between CO and CPE. The transmission delay and data rate of the bonded links need to be similar in order to reduce the processing complexity of the receiver.
Ethernet packets to be sent on the DSL link are split into smaller fragments before the TPS-TC processing, a sequence identification number (SID) is added to each fragment and then the fragments are sent as regular packets to the per-link TPS-TC function. On the receiver side, the reassembly function receives the fragments from all the TPS-TC functions (one per link), and recreates the original packet sequence from the SIDs of the received fragments.
Pre-emption support is available over bonded links. Logical depiction of the bonding function (also known as Port Aggregation Function i.e. PAF) and the pre-emption function in the relevant standards show that the transmitter first performs the bonding function before the TPS-TC layer and the pre-emption function resides within the TPS-TC layer. Since the bonding function on the receiver side attempts to reconstruct the exact packet sequence that the bonding function on the transmitter side sent, it means traffic classification cannot co-exist with bonding, because classification essentially assumes that the medium is capable of supporting different latencies for different traffic classes, whereas bonding assumes that there is a single traffic class that is transported on different media with similar latencies.
One bonding function can be provided per traffic class to address this problem. However both the transmitter and receiver need additional hardware and computational resources for supporting each instance of the bonding function. Also, bonding increases end-to-end latency, which is not suited for certain traffic classes. A more efficient approach involves limiting the number of bonding function instances and also limiting the latency for certain traffic classes. Another approach is to have dual latency in PMS-TC and bond only one of the two latency paths. The non-bonded latency path could be used for traffic classes that are sensitive to latency. However this approach results in a certain portion of the available bandwidth always being reserved for such applications or traffic classes, irrespective of whether it is required or not.